System and method for continuous supply chain control and optimization using stochastic calculus of variations approach

ABSTRACT

A system includes a first controller configured to monitor processes associated with a process facility and to generate control data for optimizing the process facility. The system also includes a second controller configured to use stochastic calculus of variations calculations to modify at least a portion of the control data and provide one of (i) continuous supply chain control and optimization for the process facility and (ii) discrete supply chain control and optimization for the process facility. The system further includes third controllers configured to operate in accordance with the control data to control the processes and to optimize the process facility.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is related to U.S. patent application Ser. No. 12/098,902 entitled “SYSTEM AND METHOD FOR DISCRETE SUPPLY CHAIN CONTROL AND OPTIMIZATION USING MODEL PREDICTIVE CONTROL” filed on Apr. 7, 2008, which is hereby incorporated by reference.

COMPUTER PROGRAM LISTING APPENDIX

A computer program listing is set forth in an Appendix. The computer program listing is provided as a text file in compliance with the American Standard Code for Information Interchange (ASCII). The computer program listing set forth in the Appendix text file is hereby incorporated by reference. The name of the Appendix text file is H0018255.txt. The date of creation of the Appendix text file is Apr. 7, 2008. The size of the Appendix text file is 199 kilobytes.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document (in the Computer Program Listing Appendix text file) contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of this patent document or the Appendix text file as it appears in the U.S. Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights and protection whatsoever.

TECHNICAL FIELD

This disclosure is directed in general to control systems for process facilities. More specifically, this disclosure is directed to a system and method for discrete or continuous supply chain control and optimization using a stochastic calculus of variations approach.

BACKGROUND

Many process facilities (such as manufacturing plants or crude oil refineries) are often managed using distributed control systems. Contemporary control systems often include numerous models tailored to control or monitor various processes associated with the facilities. Conventional systems link these modules together to produce the distributed nature of the control systems. This provides increased performance and the ability to expand or reduce the control system to satisfy changing facility needs.

Some control systems can be tailored to satisfy wide ranges of process requirements (such as global, local, or otherwise) and facility types (such as manufacturing or refining). These types of control systems are often designed with two principal objectives. One is to centralize control of as many processes as possible to improve the overall efficiency of a facility. Another is to support a common interface that communicates data among various modules controlling or monitoring the processes and also with any centralized controller or operator center.

Each process or group of associated processes being controlled often has certain input characteristics (such as flow, feed, or power) and certain output characteristics (such as temperature or pressure). In recent years, model predictive control (“MPC”) techniques have been used to optimize certain processes as a function of such characteristics. One MPC technique uses algorithmic representations of certain processes to estimate characteristic values (often referred to as “controlled variables” represented as parameters, process variables, or estimated observations) associated with the processes in order to better control such processes. In recent years, physical, economic, and other factors have been incorporated into control systems for the associated processes.

Some process facility control systems have been designed to handle operations in a process facility that has a continuous supply chain. A continuous supply chain is one in which the inputs to the process (such as feed stocks or fuel supplies) are continuously supplied to the process. An example of an industrial plant that employs a continuous supply chain is an oil refinery. However, many manufacturing systems do not employ continuous supply chains but instead employ discrete supply chains. A discrete supply chain is one in which the inputs to a process are not continuously supplied to the process. An example of an industrial manufacturing process that employs a discrete supply chain is a semiconductor manufacturing process. Discrete supply chain processes are often systems of processes at different locations (sometimes globally dispersed), such as those used to accomplish the global manufacturing and distribution of associated products.

A semiconductor manufacturing process may produce semiconductor devices by building components such as transistors, interconnecting the components, and testing the components for initial functionality. Many processing steps, such as hundreds of steps, may be carried out in the manufacturing process. The manufacturing steps are highly re-entrant and may employ many different machine types over a lengthy period of time, such as dozens of different machine types used over a number of months.

In the assembly portion of the semiconductor manufacturing process, the semiconductor devices are then mounted in packages and tested for final functionality. This may involve many packaging steps and many different machine types over a lengthy period of time, such as dozens of packaging steps performed on twenty different machine types over a period of one or two weeks. Finally, the devices are configured, marked, packed, and shipped to customers. This could involve the performance of ten or more steps on ten or more machine types over a period of several days.

A manufacturing process that employs a discrete supply chain provides different complexities when compared to a manufacturing process that employs a continuous supply chain. For example, in a discrete supply chain, system dynamics can be complicated by highly re-entrant process flows. There is also a temporal randomness to the discrete supply chain. That is, the amount of time between steps may vary in a random way. There may further be uncertain production yields in the process and uncertain demand from the customers for the products. In addition, there may be a more complex supply network for obtaining the components to manufacture the products. These factors make it very difficult to provide manufacturing control and optimization for a manufacturing process that employs a discrete supply chain.

SUMMARY

This disclosure provides a system and method for discrete or continuous supply chain control and optimization using a stochastic calculus of variations approach.

In a first embodiment, a system includes a first controller configured to monitor processes associated with a process facility and to generate control data for optimizing the process facility. The system also includes a second controller configured to use stochastic calculus of variations calculations to modify at least a portion of the control data and provide one of (i) continuous supply chain control and optimization for the process facility and (ii) discrete supply chain control and optimization for the process facility. The system further includes third controllers configured to operate in accordance with the control data to control the processes and to optimize the process facility.

In a second embodiment, a method includes monitoring processes associated with a process facility and generating control data for optimizing the process facility. The method also includes modifying at least a portion of the control data using stochastic calculus of variations calculations to provide one of (i) continuous supply chain control and optimization for the process facility and (ii) discrete supply chain control and optimization for the process facility. The method further includes controlling the processes in accordance with the modified control data to optimize the process facility.

In a third embodiment, a system includes a first controller configured to monitor processes associated with a process facility and to generate control data for optimizing the process facility. The system also includes a second controller configured to use stochastic calculus of variations calculations to modify at least a portion of the control data and provide discrete supply chain control and optimization for the process facility. The system further includes third controllers configured to operate in accordance with the control data to control the processes and to optimize the process facility.

Other technical features may be readily apparent to one skilled in the art from the following figures, descriptions, and claims.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of this disclosure and its advantages, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:

FIG. 1 illustrates an example process facility that performs operations with a continuous supply chain according to this disclosure;

FIG. 2 illustrates an example controller for use in controlling a portion of a process facility according to this disclosure;

FIG. 3 illustrates an example control system for controlling a process facility according to this disclosure;

FIG. 4 illustrates an example method for controlling a process facility according to this disclosure;

FIG. 5 illustrates an example process facility that performs operations with a discrete supply chain according to this disclosure;

FIGS. 6 and 7 illustrate an example representation of a basic supply chain link according to this disclosure;

FIG. 8 illustrates an example representation of multiple supply chain links forming a discrete supply chain for the manufacture of semiconductor devices according to this disclosure; and

FIGS. 9A and 9B illustrate example throughput time data and models according to this disclosure.

DETAILED DESCRIPTION

FIGS. 1 through 9B and the various embodiments used to describe the principles of the present invention in this patent document are by way of illustration only and should not be construed in any way to limit the scope of the invention. Those skilled in the art will understand that the principles of the invention may be implemented in any type of suitably arranged process facility or network of facilities.

FIG. 1 illustrates an example process facility 100 that performs operations with a continuous supply chain according to this disclosure. The embodiment of the process facility 100 shown in FIG. 1 is for illustration only. Other embodiments of the process facility 100 could be used without departing from the scope of this disclosure.

In this example, the process facility 100 performs operations in conjunction with a continuous supply chain with which a control system may be used. The process facility 100 processes raw materials and includes a control center 105, six associated processes 110 a-110 f arranged in three stages, and a control system 115.

The control center 105 may represent a central or other area that is commonly manned by one or more operators for monitoring and controlling the three process stages. A first process stage in this example includes three raw material grinders 110 a-110 c that operate to receive a “feed” of raw material and grind the raw material into smaller particles, such as by using a pulverizer or a grinding wheel. The second process stage includes a washer 110 d that operates to receive the ground raw materials and clean the ground raw materials to remove residue from the first stage. The third process stage includes a pair of separators 110 e-110 f that operate to receive the washed raw materials and to separate the washed raw materials into desired minerals and any remaining raw materials. Since this type of process facility 100 is provided for purposes of illustration only and the principles of such a facility are well known, further discussion of the same is beyond the scope of this patent document and unnecessary.

The control system 115 in this example includes a global controller 120 and six local controllers 125 a-125 f. Each of these controllers could be implemented using any hardware, software, firmware, or combination thereof. As a particular example, each of the controllers could include at least one processor and at least one memory capable of storing instructions and data used, generated, or collected by that controller. Each of the controllers could also include at least one network interface for communicating over at least one network, such as an Ethernet interface. In these embodiments, the control functionality of a controller could be implemented in software and executed by a suitable computing system (such as standalone or network system). Examples of this include any of the AM K2LCN, AM K4LCN, AM HMPU, AxM, or like systems from HONEYWELL INTERNATIONAL INC.

The global controller 120 in this example includes a unified controller 130 and a comparison controller 135 (although each could be located in any other location, such as one that is remote from the global controller 120 and the process facility 100). If remote from the process facility 100, communications with the control system 115 may occur using one or more wired or wireless connections.

The global controller 120 is associated with each of the local controllers 125 a-125 f and the unified controller 130 to allow communication of information between the controllers. The global controller 120 directly or indirectly monitors characteristics of the associated processes 110 a-110 f (such as status, temperature, pressure, flow rate, inventory, current, voltage, power, utilization, efficiency, or cost and other economic factors), such as through the local controllers 125 a-125 f. Depending upon the specific implementation, this monitoring may be of an individual process, a group of processes, the facility 100, or multiple facilities 100.

The global controller 120 also communicates with each of the associated processes 110 a-110 f through each of the local controllers 125 a-125 f and with the unified controller 130. The global controller 120 further generates control data in order to optimize the process facility 100. At least a portion of the control data may then be modified by the unified controller 130. The phrase “control data” includes any numeric, qualitative, or other value(s) generated to control a process facility or portion thereof. The control can take various forms, such as directing, managing, modifying, recommending, regulating, suggesting, supervising, or cooperating with a process, group of processes, facility, group of facilities, process stage, group of stages, or sequence of processes or stages. In some embodiments, the control data is dynamically generated and is based at least upon a given facility's efficiency, production, or economic cost (and possibly all three).

A stochastic process (also called a random process) is a process in which there is some indeterminacy in its future evolution as described by probability distributions. Even if the initial starting point of a stochastic process is known, there are many possible directions in which the process might go. Generally, some of the possible paths are more probable, and some of the possible paths are less probable. A stochastic process differs in this respect from a deterministic process in probability theory. A deterministic process has only one possible direction in which it will go.

In a continuous supply chain process, a step/impulse response value follows a deterministic process. For example, a temperature in a process moves in a continuous manner from temperature A to temperature B in a complete response to a heat input change to that process. In a discrete supply chain process, a step/impulse response can be assigned a probability of occurrence. For example, a probability can be assigned to the likelihood that a transportation time is three days or less for a package shipped from source A to destination B. For convenience, the probability of occurrence is designated p. For a continuous or discrete process with stochastic response characteristics, p takes a real value greater than zero but smaller than one. Any process with deterministic response characteristics can be viewed as a special case of a stochastic process in which the probability p for its response characteristics is equal to one. Examples of the step/impulse response of a discrete supply chain are provided in FIGS. 9A and 9B, which are described below.

In a discrete manufacturing or supply chain process, the probability value p of a particular step/impulse response can change over time. For the purposes of this disclosure, the time in which a response is expected to occur is referred to as the response horizon. Therefore, in a discrete supply chain process, it is possible that the probability value p of a particular step/impulse response can change during the response horizon. For many types of discrete processes, the probability value p approaches a value of one as the response horizon approaches Infinity. For control and optimization purposes, however, the probability is sufficiently close to one at some finite response horizon.

There are several significant differences between a continuous process and a discrete process. For example, in a continuous process, dynamic models may not be easy to obtain. A significant amount of effort and expense may be required to obtain a dynamic model for a continuous process. In contrast, dynamic models are often easier to obtain for a discrete process. That is, less effort and expense may be required to obtain a dynamic model for a discrete process. Also, in a continuous process, the model quality may generally be low, both structurally and parametrically. In a discrete process, the model quality is generally high if not perfect, although parametric uncertainty may be high in a discrete process. Further, in a continuous process, the model often changes over time, and the model for a continuous process often has robust control and good schemes of maintenance. In a discrete process, there are often many different grades, runs, or batches, and the model for each in a discrete process has to be appropriately scheduled. Lastly, in a continuous process, the execution frequency is often high, typically on the order of per minute or per second. In a discrete supply chain process, the execution frequency is often low, typically on the order of hours, days, or weeks.

The unified controller 130 here provides model predictive control (MPC) using range control. The unified controller 130 does this using a stochastic calculus of variations approach to provide discrete or continuous supply chain control and optimization for a process facility. The theory of stochastic calculus of variations is also referred to as “Malliavin calculus.” Malliavin calculus provides mathematical techniques that can be used to compute derivatives of random variables.

The unified controller 130 handles discrete system characteristics of supply chain dynamics as an inventory control and optimization problem using range control. The unified controller 130 is able to handle both continuous system characteristics and discrete system characteristics. One example of the operations performed by the unified controller 130 is defined by the instructions contained in the attached software appendix. An operating system interface program could coordinate the operation of the instructions in the software appendix with the operating system of the unified controller 130.

The unified controller 130 is able to handle a large amount of uncertainty using available data on supply and demand forecasts. The unified controller 130 is also able to solve a large supply chain system within a reasonable amount of time. The unified controller 130 receives and modifies control data from the global controller 120 and provides the control data to the local controllers 125 a-125 f. The local controllers 125 a-125 f, which are also monitoring the associated processes 110 a-110 f, operate to varying degrees in accordance with the control data to control the associated processes and, more particularly, to modify one or more of the associated processes 110 a-110 f and improve the monitored characteristics and facility 100 as a whole. The control system 115 therefore enables both global and local monitoring and cooperative control of the associated processes 110 a-110 f using varying degrees of compliance with the control data. The unified controller 130 could be implemented in any suitable manner, such as by using PROFIT CONTROLLER from HONEYWELL INTERNATIONAL INC. and the instructions listed in the software appendix. The unified controller 130 could also be implemented using technology described in the following U.S. Pat. Nos. 5,351,184; 5,561,599; 5,572,420; 5,574,638; 5,758,074; 6,055,483; 6,122,555; 6,347,254; 6,542,782; and 6,253,113.

One aspect of the control system 115 is that one or more of the processes 110 a-110 f and the facility 100 as a whole (or more than one such facility) may be dynamically and cooperatively controlled as a function of local and global optimization efforts. Also, such dynamic and cooperative control can be independent of the relationship between the global controller 120 and the specific local controllers 125 a-125 f. The relationship between the global controller 120 and various ones of the process controllers 125 a-125 f may be master-slave (full compliance), cooperative (varying compliance, such as by using the supervisory data as a factor in controlling the associated processes), or complete disregard (noncompliance). Depending upon the specific implementation and the needs of a given facility 100, the relationship between the global controller 120 and a specific local controller may be static (such as always only one of compliance, cooperative, or noncompliance), dynamic (such as varying over time, like within a range between compliance and noncompliance or some lesser range in between), or switching between static periods and dynamic periods.

Although FIG. 1 illustrates one example of a process facility 100 that performs operations with a continuous supply chain, various changes may be made to FIG. 1. For example, the process facility 100 could include any number of processes, control systems, and controllers.

FIG. 2 illustrates an example controller 125 for use in controlling a portion of a process facility according to this disclosure. In particular, FIG. 2 illustrates an example of one of the local controllers 125 a-125 f in the system 100 of FIG. 1. The embodiment of the controller 125 shown in FIG. 2 is for illustration only. Other embodiments of the controller 125 could be used without departing from the scope of this disclosure.

In this example, the controller 125 is associated with one or a group of processes 110. The controller 125 could be implemented using any hardware, software, firmware, or combination thereof. As a particular example, the controller 125 could be implemented using PROFIT CONTROLLER from HONEYWELL INTERNATIONAL INC.

In the Illustrated embodiment, the local controller 125 receives as inputs control/optimization specifications 200 (such as bounds, ranges, tolerances, or control points) and feedback data 205 (such as output of an associated process 110). The control/optimization specifications 200 may be received from any of a number of sources depending upon the associated process or group of processes 110, the facility 100, or other factors. For example, any of the control/optimization specifications 200 may be received from an operator of the control center 105, retrieved from a database or data repository, received from other local controllers, or received from the global controller 120.

The control/optimization specifications 200 include two types of variables: (1) manipulated variables (“MVs”) that may be manipulated, such as flow rate, feed temperature, or air blower speed; and (2) disturbance variables (“DVs”) that cannot be manipulated, such as burn rate, fuel quality per unit, or ambient temperature. Feedback data 205 represents controlled variables (“CVs”) that are responsive to the NVs and DVs. The CVs are outputs of the associated process(es) 110, such as pressure, temperature, or inventory. Any or all of the MVs, DVs and CVs represent characteristics of the associated process(es) 110 that may be suitably monitored by the local controller 125 and, directly or indirectly, by the global controller 120.

The local controller 125 includes a dynamic prediction task with state estimation 210, a local linear program/quadratic program (“LP/QP”) optimization task 215, and a dynamic control/optimization augmented range control algorithm (“RCA”) 220. The dynamic prediction task 210 receives the CVs and operates to generate an array of multiple predictions (or dynamic unforced predictions) and an unforced prediction for values associated with the associated process(es) 110. The unforced prediction could be made at “5 tau” (response time close to complete response). The local LP/QP optimization task 215 receives optimization specifications 200 a and, in response to the unforced prediction, generates optimal values associated with the associated process(es) 110 (such as at 5 tau). The optimization specifications 200 a can be associated, directly or indirectly, with an economic value of the output of the associated process(es) 110. The dynamic control/optimization augmented RCA 220 receives control specifications 200 b and, in response to receiving the array of multiple predictions from the dynamic prediction task 210 and the optimal values from the local LP/QP optimization task 215, generate control values that are input to the associated process(es) 110. The local controller 125 here can use control/optimization specifications 200 and feedback data 205 to locally unify economic/operational optimization with MPC (model predictive control) dynamically for a specific process or group of processes.

FIG. 3 illustrates an example control system 115 for controlling a process facility according to this disclosure. As shown in FIG. 3, the control system 115 includes the global controller 120 (such as a global dynamic LP/QP program controller), multiple local controllers 125 a-125 n (such as those implemented as shown in FIG. 2), the unified controller 130, and the comparison controller 135.

In this example, the communication of control data and characteristics of the associated processes 110 occurs over communication paths 300 a-300 n, which could be synchronous or asynchronous. As previously mentioned, the process facility 100 shown in FIG. 1 includes three process stages (grinding, washing, and separating) that cooperate to process raw materials. These three stages are interrelated and, according to the illustrated embodiment, cascaded. Cascaded processes generally represent those where the output of at least one process feeds into the input of at least one other process (sub-processes could also be cascaded). Using the concepts of MVs, DVs, and CVs and referring concurrently to FIG. 1, the cascading of the illustrated process may be described as follows:

(1) MVs and DVs associated with the grinding process (grinders 110 a-110 c) are input to the grinding processes;

(2) Any of the MVs and DVs input to any of the grinding processes (grinders 110 a-110 c) and any resulting CVs thereof may be input as DVs, along with the MVs and DVs associated with the washing process (washer 110 d), into the washing process; and

(3) Any of the MVs and DVs input to any of the grinding processes (grinders 110 a-110 c) and any resulting CVS thereof and any of the MVs and DVs input to the washing process (washer 110 d) and any resulting CVs thereof may be input as DVs, along with the MVs and DVs input to the separating processes (separators 110 e-110 f), into either of the separating processes.

FIG. 4 illustrates an example method 400 for controlling a process facility according to this disclosure. The method 400 operates (such as in the control system 115) to globally optimize a process facility 100. For the purpose of illustration, concurrent reference is made to FIGS. 1-3. At the beginning of the method 400, each of the local controllers 125 a-125 n continuously monitors its respective associated process(es) 110 at step 404. This could include each local controller monitoring characteristics of the associated process(es) 110 like output and other measurable data incident thereto (including pressure, temperature, or other CVs).

The local controllers 125 a-125 n communicate such monitored characteristics to the global controller 120 at step 410. The global controller 120 globally monitors the characteristics of the associated processes 110 through the local controllers 125 a-125 n at step 415. In other embodiments, the global controller 120 may suitably globally monitor the associated processes 110 directly.

The global controller 120 includes or supports an economic objective function (J). For example, the economic objective function could equal (at 5 tau) a summation of the dynamic LP/QP coefficients (linear/quadratic objective functions) of the local controllers 125 a-125 n, which can be expressed as: J=LP/QP1+LP/QP2+LP/QP3+ . . . +LP/QPn. Each local controller 125 a-125 n can update its CV predictions and constraints according to the embodiment that is shown in FIG. 2 and communicate model information (such as on-the-fly model updates), dynamic predictions, current CV/MV/DV values, status and constraints, and objective functions.

The global controller 120 generates, in response to the received monitored characteristics, control data for dynamically optimizing the process facility 100 at step 420. For example, the global controller 120 can combine the multiple dynamically received LP/QP coefficients as set forth above to solve for a global LP/QP (control data according to the illustrated embodiment). Thus, the global controller 120 can use an economic-based optimization parameter, although any suitable optimization algorithm, procedure, equation, or the like may be used (such as those that are at least substantially global facility-wide).

At least a portion of the control data is communicated to the unified controller 130. The control data is processed in response to certain relationships among two or more of the associated processes 110 to predict values of certain characteristics of the associated processes 110 at step 425. For example, the unified controller 130 may predict each of a current time value (t₀) and a future time value (t_(x)) for the portion of the control data as the control data relates to the associated processes 110. The unified controller 130 could also provide enough points between the current and future values to supply a predicted slope or trend of a given process or group of processes with respect to the portion of the control data (such as an array of predicted values).

The comparison controller 135 compares those portions of the control data that represent the predicted values of characteristics of the associated processes 110 with their respective actual (current real) values as monitored by the local controllers at step 430. For example, the comparison controller 135 could compare an actual time value (time t₀) of the portion of the control data and the current and future values of the portion predicted by the unified controller 130. The unified controller 130 may modify the portion of the control data in response thereto to further optimize the process facility 100 at step 435.

The global controller 120 may modify the unified controller 130 in response to the comparison in which the comparison controller 135 determined an efficiency (such as productivity, cost, capability, worth, or profit) of at least a portion of the unified controller 130 at step 440. Such dynamic modifications can work to improve an efficiency of the unified controller 130 and to further optimize the process facility 100. For example, the global controller 120 or some other part of the control system 115 may track a performance characteristic of the unified controller 130 and compare the performance characteristic with a threshold or the like. In the event that the performance characteristic compares unfavorably, the unified controller 130 or some poorly performing part thereof may be dynamically modified to improve its performance.

The unified controller 130 may use any suitable model or modeling technique to modify the control data from the global controller 120. For example, the unified controller 130 may use any suitable model or modeling technique to understand or predict the association, behavior, function, operation, performance, or the like among the associated processes 110.

The global controller 120 communicates the control data to the local controllers 125 a-125 n at step 445. The local controllers 125 a-125 n use the control data to varying degrees to locally control the associated processes 110 to optimize the process facility 100 at step 450. The optimization solution is thus integrated into each local controller (such as into the PROFIT CONTROLLER control solution in the local controller).

It may be noted that the control data here provides a dynamically updated global optimization solution for the “stead state” optimization horizon in the process facility 100. The global solution is used, to varying degrees, by the local controllers to optimize associated processes 110 in response to a desired facility-wide optimization solution, which may be largely economic-based. As previously noted, such varying degrees of compliance with the control data may suitably range between compliance and noncompliance with the same. The local controllers 125 a-125 n may dynamically vary their respective degree (range) of compliance. Accordingly, a particular local controller may have a cooperative association, a direct association, or a “Pro-Only” (on your own) association with the control data. These are described in greater detail in U.S. Pat. No. 6,122,555. In other embodiments, multiple local controllers may have various static degrees of compliance or some combination of degrees of compliance.

It may again be noted that the global controller 120 is termed “global” because it monitors all (or at least a substantial number) of associated processes 110, either directly, indirectly, or through a suitable combination thereof. In addition, while the functions of the global controller 120 have been illustrated as being centralized, its functionality may be suitably distributed throughout the process facility 100. Similarly, the local controllers 125 a-125 n are termed “local” because each is associated with a specific process, group of processes, or portion thereof. This may be true regardless of the physical location or proximity of the local controllers with respect to the associated processes 110. Although the functions of local controllers 125 a-125 n have been illustrated as being distributed their functionality may be centralized somewhere in the process facility 100. In addition, the functionality of the controllers 120 and 125 may be collectively distributed or centralized or partially distributed and centralized, depending upon the needs of the process facility 100 to be controlled.

It should also be noted that the use of modeling techniques to improve the cooperation between the global controller 120 and the local controllers 125 may be of any suitable type. For example, any unified controller 130 that modifies at least a portion of the control data in response to relationships among the associated processes 110 could be used. This functionality may be distributed, localized, centralized, or otherwise implemented.

FIG. 5 illustrates an example process facility 500 that performs operations with a discrete supply chain according to this disclosure. The embodiment of the process facility 500 shown in FIG. 5 is for illustration only. Other embodiments of the process facility 100 could be used without departing from the scope of this disclosure.

The unified controller 130 that has been previously described operates on both a continuous supply chain and on a discrete supply chain. The process facility 500 performs operations with a discrete supply chain to manufacture semiconductor devices.

As shown in FIG. 5, the process facility 500 generally includes a fabrication process 510 followed by a testing process 520. A yield segregation/configuration process 530 is then performed, followed by an assembly process 540 and an additional testing process 550. After that, a packaging process 560 is performed, followed by a shipping process 570. Several such processes may run in parallel, sharing equipment at the same facility or at separate facilities. The various processes 510-570 of the discrete supply chain manufacturing process facility 500 can be controlled by the control system 115 (including the unified controller 130) in the manner that has been previously described.

FIGS. 6 and 7 illustrate an example representation of a basic supply chain link according to this disclosure. In FIG. 6, a basic supply chain link 600 is shown. The first portion of the basic supply chain link 600 includes a first inventory (designated Inventory One 610). Products that are located in Inventory One 610 are released in a step that is designated as Release From Inventory 620. The products that are released from Inventory One 610 are processed in a manufacturing process that is designated as Processing 630. The manufacturing process 630 may include a fabrication process, an assembly process, a packaging process, a finishing process, or the like (such as those shown in FIG. 5). The manufacturing process 630 may also include one or more testing processes (such as those shown in FIG. 5).

After the manufacturing process 630 has been completed, the manufactured product is transported to a new inventory. As shown in FIG. 6, a first transport step 640 moves the product to a second inventory (designated Inventory Two 650). A second transport step 650 moves the product to a third inventory (designated Inventory 670).

The basic supply chain link 600 that is shown in FIG. 6 can therefore be summarized using the representation 700 shown in FIG. 7. The first inventory 610 is represented in FIG. 7 as a box designated I-1. The release from inventory step 620 is represented as a valve that is designated R-1. The manufacturing and testing process 630 is represented by a rectangle designated P-1. The transport step 640 is designated T-1. The transport step 660 is designated T-2. The second inventory 650 is represented by a box designated I-2. The third inventory 670 is represented by a box designated I-3.

FIG. 8 illustrates an example representation 800 of multiple supply chain links forming a discrete supply chain for the manufacture of semiconductor devices according to this disclosure. As shown in FIG. 8, the representation 700 of a basic supply chain link 600 may be used to summarize a process for manufacturing semiconductor devices. In FIG. 8, the arrow designated Supply (S) represents a product that is supplied to the first inventory I1 (designated Supply and Forecast). The control point designated R1 releases the product from the first inventory I1 to the manufacturing process P1 (designated Manufacturing) Transport T1 transports the manufactured product to the second inventory I2 designated Raw Product).

The control point designated R2 releases the product from the second inventory I2 to a testing and segregation process P2 (designated Testing and Segregation). Transport T2 transports the tested product to the third inventory I3 (designated Tested Parts). The control point designated R3 releases the product from the third inventory I3 to a configuration and assembly process P3 (designated Configuration and Assembly). Transport T3 transports the configured and assembled product to the fourth inventory I4 (designated Semi-Finished Components).

The control point that is designated R4 releases the product from the fourth inventory I4 to a packaging process P4 (designated Packaging). Transport T4 transports the packaged product to the fifth inventory I5 (designated Product Warehouse). The control point that is designated R5 releases the product from the fifth inventory I5 to a shipping process P5 (designated Shipping). Transport T5 transports the product in accordance with the customer orders. The customer orders are designated Customer Orders and Forecast (designated with the letter D). The arrow that is designated Demand (D) in FIG. 8 represents product orders from customers (actual and anticipated/forecasted).

FIGS. 9A and 9B illustrate example throughput time data and models according to this disclosure. In FIG. 9A, the data can be modeled using a first-order exponential model, such as: 1−e ^(−(t−θ)/t) ,t≧θ In FIG. 9B, the data can be modeled using a second-order exponential model, such as:

${1 + \frac{{\tau_{1}{\mathbb{e}}^{{- {({t - \theta})}}/\tau_{1}}} - {\tau_{2}{\mathbb{e}}^{{- {({t - \theta})}}/\tau_{2}}}}{\tau_{2} - \tau_{1}}},{t \geq \theta},{\tau_{1} \neq {\tau_{2}.}}$ Here, τ₁ and τ₂ represent time constants of the models, θ represents a time delay (one interval less than the shortest processing time), and t represents time. In FIGS. 9A and 9B, r denotes cumulative probability, and r′ denotes the probability during a specific time interval.

In this example, the figures illustrate the amount of time that different units of the same product may require to flow through a set of processing steps at a particular facility. For example, about 23% (p=0.23) of the units could be processed within four periods, and about 80% (p=0.8) of the units could be processed within 10 periods. Likewise, about 21% (p′=0.21) of the units could be processed during period four and about 4% (p′=0.04) of the units could be processed during period ten. The first-order and second-order exponential models of the processing times are compared against the actual data using the lines in these figures. Here, “PDF” stands for probability density function. Note that shipping times could be modeled in a similar manner.

The control system 115 (including the unified controller 130) controls the various processes of both a discrete supply chain manufacturing process and a continuous supply chain manufacturing process in the manner that has been previously described. The system and method are able to handle both the continuous dynamics of a manufacturing process and the discrete dynamics of a manufacturing process. The system and method are also able to handle both deterministic system behaviors (for continuous supply chain control and optimization) and stochastic system behaviors (for discrete supply chain control and optimization). Of course, the control system 115 could be implemented in a system that only uses discrete supply chain manufacturing processes or only continuous supply chain manufacturing processes. The system and method are further able to handle the re-entrant dynamics and re-entrant system behaviors that occur in some processing equipment.

In some embodiments, various functions described above are implemented or supported by a computer program that is formed from computer readable program code and that is embodied in a computer readable medium. The phrase “computer readable program code” includes any type of computer code, including source code, object code, and executable code. The phrase “computer readable medium” includes any type of medium capable of being accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a compact disc (CD), a digital video disc (DVD), or any other type of memory.

It may be advantageous to set forth definitions of certain words and phrases used throughout this patent document. The term “couple” and its derivatives refer to any direct or indirect communication between two or more elements, whether or not those elements are in physical contact with one another. The terms “application” and “program” refer to one or more computer programs, software components, sets of instructions, procedures, functions, objects, classes, instances, related data, or a portion thereof adapted for implementation in a suitable computer code (including source code, object code, or executable code). The terms “transmit,” “receive,” and “communicate,” as well as derivatives thereof, encompass both direct and indirect communication. The terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation. The term “or” is inclusive, meaning and/or. The phrases “associated with” and “associated therewith,” as well as derivatives thereof, may mean co include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, or the like. The term “controller” means any device, system, or part thereof that controls at least one operation. A controller may be implemented in hardware, firmware, software, or some combination of at least two of the same. The functionality associated with any particular controller may be centralized or distributed, whether locally or remotely.

While this disclosure has described certain embodiments and generally associated methods, alterations and permutations of these embodiments and methods will be apparent to those skilled in the art. Accordingly, the above description of example embodiments does not define or constrain this disclosure. Other changes, substitutions, and alterations are also possible without departing from the spirit and scope of this disclosure, as defined by the following claims. 

1. A system comprising: a first controller configured to monitor one or more processes associated with a process facility and to generate control data for optimizing the process facility, wherein the control data comprises control values for controlling the one or more processes; a second controller configured to use stochastic calculus of variations calculations to modify at least a portion of the control data and provide continuous supply chain control and optimization for the process facility, wherein the second controller is configured to use one or more of the control values as inputs to the stochastic calculus of variations calculations to predict one or more future control values; and one or more third controllers configured to operate in accordance with the modified control data to control the one or more processes and to optimize the process facility.
 2. The system of claim 1, wherein the second controller is associated with the first controller.
 3. The system of claim 1, wherein: the one or more third controllers are configured to monitor one or more characteristics of the one or more processes; and the at least a portion of the control data modified by the second controller represents at least one predicted value of the one or more monitored characteristics.
 4. The system of claim 3, further comprising: a fourth controller configured to compare the one or more monitored characteristics and the at least a portion of the control data modified by the second controller.
 5. The system of claim 1, wherein: the first controller is configured to monitor one or more characteristics of the one or more processes; and the one or more monitored characteristics are communicated between the first controller and the one or more third controllers.
 6. The system of claim 5, wherein the one or more monitored characteristics include output data associated with the one or more processes.
 7. The system of claim 1, wherein the one or more third controllers are configured to operate in accordance with the modified control data to varying degrees, the varying degrees ranging between compliance and noncompliance with the modified control data.
 8. A method comprising: monitoring one or more processes associated with a process facility and generating control data for optimizing the process facility, wherein the control data comprises control values generated to control the one or more processes; modifying at least a portion of the control data using stochastic calculus of variations calculations to provide continuous supply chain control and optimization for the process facility, wherein one or more of the control values are used as inputs to the stochastic calculus of variations calculations to predict one or more future control values; and controlling the one or more processes in accordance with the modified control data to optimize the process facility.
 9. The method of claim 8, wherein: a first controller generates the control data; and a second controller associated with the first controller modifies the control data.
 10. The method of claim 9, further comprising: locally monitoring one or more characteristics of the one or more processes; and representing at least one predicted value of the one or more monitored characteristics with the at least a portion of the control data that is modified.
 11. The method of claim 10, further comprising: comparing the one or more monitored characteristics and the at least a portion of the control data that is modified.
 12. The method of claim 9, further comprising: monitoring one or more characteristics of the one or more processes with the first controller; and communicating, the one or more monitored characteristics to one or more third controllers that control the one or more processes.
 13. The method of claim 12, wherein the one or more monitored characteristics include output data associated with the one or more processes.
 14. The method of claim 12, wherein the one or more third controllers are configured to operate in accordance with the modified control data to varying degrees, the varying degrees ranging between compliance and noncompliance with the modified control data.
 15. A non-transitory computer readable medium embodying a computer program, the computer program comprising: computer readable program code for receiving control data for optimizing a process facility, wherein the control data comprises control values for controlling one or more processes associated with the process facility; computer readable program code for modifying at least a portion of the control data using stochastic calculus of variations calculations to provide continuous supply chain control and optimization for the process facility, wherein one or more of the control values are used as inputs to the stochastic calculus of variations calculations to predict one or more future control values; and computer readable program code for providing the modified control data to one or more controllers configured to operate in accordance with the modified control data to control the one or more processes.
 16. The computer readable medium of claim 15, wherein: the one or more controllers are configured to monitor one or more characteristics of the one or more processes; and the at least a portion of the control data modified by the computer readable program code for modifying represents at least one predicted value of the one or more monitored characteristics.
 17. An apparatus comprising: at least one processor configured to: obtain control data for optimizing a process facility, wherein the control data comprises control values for controlling one or more processes associated with the process facility; modify at least a portion of the control data using stochastic calculus of variations calculations to provide continuous supply chain control and optimization for the process facility, wherein one or more of the control values are used as inputs to the stochastic calculus of variations calculations to predict one or more future control values; and provide the modified control data to one or more controllers configured to operate in accordance with the modified control data to control the one or more processes.
 18. The apparatus of claim 17, wherein: the one or more controllers are configured to monitor one or more characteristics of the one or more processes; and the at least a portion of the control data modified by the apparatus represents at least one predicted value of the one or more monitored characteristics.
 19. The apparatus of claim 17, wherein the at least one processor is further configured to generate the control data for optimizing the process facility.
 20. The apparatus of claim 17, further comprising: at least one interface configured to receive the control data and to output the modified control data. 